Providing a simulation of wearing items such as garments and/or accessories

ABSTRACT

A user may simulate wearing real-wearable items, such as virtual garments and accessories. A virtual-outfitting interface may be provided for presentation to the user. An item-search/selection portion within the virtual-outfitting interface may be provided. The item-search/selection portion may depict one or more virtual-wearable items corresponding to one or more real-wearable items. The user may be allowed to select at least one virtual-wearable item from the item-search/selection portion. A main display portion within the virtual-outfitting interface may be provided. The main display portion may include a composite video feed that incorporates a video feed of the user and the selected at least one virtual-wearable item such that the user appears to be wearing the selected at least one virtual-wearable item in the main display portion.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application is a continuation of U.S. Non-Provisional patentapplication Ser. No. 12/822,168 filed Jun. 23, 2010, which claims thepriority benefit of U.S. provisional patent application Ser. No.61/233,364 filed Aug. 12, 2009 and U.S. provisional patent applicationSer. No. 61/233,377 filed Aug. 12, 2009 the disclosures of which areincorporated herein by reference.

FIELD OF THE INVENTION

The invention relates to allowing a user to simulate wearing wearableitems by providing a composite video feed that incorporates a live videofeed of the user and at least one virtual-wearable item, whichrepresents at least one real-wearable item, such that the user appearsto be wearing the at least one real-wearable item in the composite videofeed.

BACKGROUND OF THE INVENTION

Typically, in e-commerce environments (e.g., an online storefront),potential customers are presented images of goods offered for sale. Inthe case of wearable goods, such as clothing and accessories, apotential customer must speculate as to whether they will like a givenwearable good once they try it on. In order to try on a wearable goodoffered for sale in a conventional e-commerce environment, however, acustomer must first purchase the good and wait for its delivery. Thisbarrier to affirming a desire to purchase a good may prevent themajority of potential customers who visit a given e-commerce environmentfrom actually making purchase.

SUMMARY

One aspect of the invention relates to a system configured to provide asimulation of wearing real-wearable items, according to one or moreimplementations of the invention. According to exemplaryimplementations, the user may be presented one or more virtual-wearableitems, such as via a user interface. The virtual-wearable items mayinclude virtual garments (e.g., a virtual shirt, a virtual hat, virtualpants, and/or other virtual garments), virtual accessories (e.g.,virtual jewelry, virtual hats, and/or other virtual accessories), and/orother virtual-wearable items. The virtual-wearable items may representreal-wearable items. The user may select at least one of thevirtual-wearable item to virtually “try on” at least one correspondingreal-wearable item. A composite image may be presented to the user inreal time or near-real time, which may incorporate a live video feed ofthe user and one or more selected virtual-wearable items such that theuser appears to be wearing real-wearable items corresponding to theselected virtual-wearable item(s) in the composite video feed.

In some implementations, the user may be presented a virtual-outfittinginterface. The virtual-outfitting interface may include severalportions, one of which may include the composite video feed. Variousinputs such as motions of the user may be tracked such that the user mayinteract with one or more of the portions of the virtual-outfittinginterface. For example, the user may change the virtual-wearable itemdisplayed, purchase a real-wearable item associated with a displayedvirtual-wearable item, obtain a snapshot or video clip of the uservirtually wearing a real-wearable item, share snapshots or video clipssuch as via social-networking services, view and interact with friendsthat are also virtually trying on real-wearable items, and/or performother actions in conjunction with the system.

In some implementations, the system may include one or morevirtual-commerce-environment servers and/or other components. The systemmay operate in communication and/or coordination with one or moreexternal resources. Users may interface with the system and/or theexternal resources via client computing platforms. Components of thesystem, the virtual-commerce-environment servers, the externalresources, and/or the client computing platforms may be operativelylinked via one or more electronic communication links. For example, suchelectronic communication links may be established, at least in part, viaa network, which may include the Internet and/or other networks.

A given client computing platform may include one or more processorsconfigured to execute computer program modules. The computer programmodules may be configured to enable one or more users associated withthe given client computing platform to interface with the system and/orthe external resources, and/or provide other functionality attributedherein to client computing platforms. A given client computing platformmay also be communicatively coupled with an imaging device, or have suchan imaging device integrated therewith. Examples of imaging devices ananalog camera, a digital camera, a 2D camera, a stereo camera, a 3Dcamera, and/or other imaging devices. An imaging device may beconfigured to capture still images and/or a live video feed of a user ofa given client computing platform. Imaging devices associated withindividual ones of the client computing platforms may be configured toprovide information (e.g., a video feed, one or more images, and/orother information) to one or more modules associated with thevirtual-commerce-environment servers.

Individual ones of the client computing platforms may include userinterfaces. A user interface included in a given client computingplatform may be configured to provide an interface between thevirtual-commerce-environment servers and a user of the given clientcomputing platform through which the user may provide information toand/or receive information from the virtual-commerce-environmentservers. This enables data, results, and/or instructions and any othercommunicable items, collectively referred to as “information,” to becommunicated between the user and virtual-commerce-environment servers.

The external resources may include sources of information, hosts and/orproviders of virtual commerce environments outside of the system,external entities participating with the system, and/or other resources.In some implementations, some or all of the functionality attributedherein to the external resources may be provided by resources includedin the system.

The virtual-commerce-environment servers may comprise electronicstorage, one or more processors, and/or other components. The electronicstorage may comprise electronic storage media that electronically storesinformation. The processor(s) may be configured to provide informationprocessing capabilities in the virtual environments servers.

The processor may be configured to execute a virtual outfitting program.The virtual outfitting program may include one or more computer programmodules and/or instructions that may be executed to provide a simulationof wearing real-wearable items. The one or more computer program modulesmay include one or more of a virtual-outfitting-interface module, amotion-capture module, an item-search/selection module, acomposite-imaging module, a conferencing module, a purchase module, ascreen-capture module, a social-networking module, an interface-controlmodule, and/or other modules.

The virtual-outfitting-interface module may be configured to provide,for presentation to one or more users, a virtual-outfitting interface.The virtual-outfitting interface may be presented to a user via a userinterface of a given client computing platform. The virtual-outfittinginterface may include an item-search/selection portion, a main displayportion, a current item details portion, a conferencing portion, a toolsportion, a snapshot portion, and/or other portions.

A user may interact with one or more portions of the virtual-outfittinginterface. In some implementations, the user may interact with one ormore portions via a user interface associated with a given clientcomputing platform. The user may interact with one or more portions byvoice command, according to some implementations. The user may interactwith one or more portions, in accordance with some implementations,using motions and/or gestural commands.

The motion-capture module may be configured to track motion of the user.Motion of the user tracked by the motion-capture module may allow theuser to interact with one or more portions of the virtual-outfittinginterface. Such interactions may include gestural commands and/or othercommands associated with motions of the user. The motion-capture modulemay utilize images and/or video of the user obtained by an imagingdevice associated with one of the client computing platforms in order totrack motion of the user. Exemplary implementations of motion trackingand utilization thereof are described further in connection with one ormore portions of the virtual-outfitting interface.

The item-search/selection module may be configured to provide theitem-search/selection portion of the virtual-outfitting interface. Theitem-search/selection portion may present one or more virtual-wearableitems to a user. As mentioned above, virtual-wearable items may includeone or more of a virtual garment, a virtual accessory, and/or othervirtual-wearable items. In some implementations, a givenvirtual-wearable item may represent a real-wearable item. In someimplementations, the item-search/selection portion may display an imageor other representation (e.g., a textual representation) of avirtual-wearable item. The user may manipulate the item-search/selectionportion using an interface included in a given client computing platformand/or other techniques described herein, such as gestures and/or voicecommands.

According to some implementations, the item-search/selection module maybe configured to allow a user to search available virtual-wearableitems. Available items may be presented in the item-search/selectionportion, and may be searched according to type, size, style, brand,vendor, price, availability, and/or other attributes associated withreal-wearable items. In some implementations, some or all searchingcapabilities may be provided by a third-party service (e.g.,Amazon.com™, Google™, and/or other third parties). Theitem-search/selection module may be configured to provide suggestions ofone or more real-wearable items based on one or more search criterionsinputted by the user.

In some implementations, the item-search/selection module may beconfigured to allow a user to select one or more virtual-wearable itemspresented in the item-search/selection portion. Selectedvirtual-wearable items may be “tried-on” virtually by the user, asdescribed further herein. In some implementations, one or morevirtual-wearable items presented in the item-search/selection portionmay be pre-selected by one or more users, such as via an onlinestorefront.

The item-search/selection module may be configured to manage a queue ofselected virtual-wearable items, in some implementations. Some or all ofthe queue of selected virtual-wearable items may be presented in theitem-search/selection portion. The user may add, subtract, reorder,scroll through, browse, and/or otherwise manage selectedvirtual-wearable items included in such a queue. Some implementationsmay include a default queue that includes a predetermined set ofvirtual-wearable items. The user may select one or more virtual-wearableitems from to queue in order to virtually “try on” real-wearable itemscorresponding to selected virtual-wearable items.

The composite-imaging module may be configured to provide the maindisplay portion of the virtual-outfitting interface. The main displayportion may include one or more images and/or video of the uservirtually trying on one or more real-wearable items that correspond toone or more selected virtual-wearable items. In such images and/orvideo, the one or more selected virtual-wearable items may be visuallyoverlaid on the user in a position in which the user would normally wearcorresponding real-wearable items. The position of the virtual-wearableitem in the main display portion may be determined manually by the user(e.g., drag and drop) using a user interface of a given client computingplatforms, and/or may be determined wholly or partially by themotion-capture module, as described further herein. In someimplementations, the main display portion may include a composite videofeed that incorporates a video feed of the user and one or morevirtual-wearable items selected by the user via theitem-search/selection module. The video feed of the user may be obtainedby an imaging device associated with one of the client computingplatforms. Presentation of the composite video feed may be in real timeor near-real time.

The motion-capture module may be configured to position and/or size avirtual-wearable item relative to the user's body in an image and/orvideo in the main display portion. Some implementations may utilizeaugmented reality technology to position a virtual-wearable itemrelative to the user's body. The motion-capture module may utilize anaugmented-reality marker in order position a virtual-wearable item. Anaugmented-reality marker may include a predefined pattern printed on asheet of paper, an arbitrary image or pattern (e.g., a magazineadvertisement), and/or other image or pattern. An augmented-realitymarker may allow the user to position and/or size a selectedvirtual-wearable item within the main display portion. For example, inone implementation, the position of an augmented-reality-marker in themain display portion may correspond to the position of avirtual-wearable item in the main display portion. As such, the user mayhold an augmented-reality marker in front of themselves while viewingthe main display portion to position a virtual-wearable item so that itappears that the user is wearing the virtual-wearable item.

Some implementations may not require an augmented-reality marker toposition and/or size a virtual-wearable item in the main displayportion. For example, the motion-capture module may be configured torecognize position and/or orientation of one more body parts of the userin the main display portion in order to determine a position, size,and/or orientation for a given virtual-wearable item in the main displayportion. Once the one or more body parts are recognized, thecomposite-imaging module may position a virtual-wearable item at apredetermined offset and/or orientation relative to the recognized oneor more body parts.

The motion-capture module may track motion, position, and/or orientationof the user to overlay a virtual-wearable item on the user in the maindisplay portion such that the virtual-wearable item appears to be wornby the user while the user moves about and/or rotates in the maindisplay portion. Based on tracked motion, position and/or orientation ofthe user in the main display portion, a virtual-wearable item may movewithin the main display portion in order to track movements of the user.Characteristics associated with a virtual-wearable item (e.g., type offabric, texture of fabric, and/or other characteristics) may be utilizedin rendering the virtual-wearable item in the main display portion inorder to enhance the realness of the appearance of the virtual-wearableitem.

In some implementations, the motion-capture module may be configured toallow the user may interact with one or more portions of thevirtual-outfitting interface by moving a body part (e.g., a finger,hand, and/or other body part) such that the body part, as depicted inthe main display portion, lies within one or more portions. By way ofnon-limiting example, the user may move a hand such that it lies withinthe item-search/selection portion in order to select a virtual-wearableitem, to effectuate a displayed virtual-wearable item included in themain display portion being replaced by a different selectedvirtual-wearable item such that the user appears to be wearing thedifferent selected virtual-wearable item in the main display portion, tocycle through virtual-wearable items included in a queue of severalvirtual-wearable items, and/or to perform other functions associatedwith the item-search/selection portion.

The item-search/selection module may be configured to provide thecurrent item details portion of the virtual-outfitting interface. Thecurrent item details portion may include one or more details of thereal-wearable item that a user is currently trying on virtually usingthe system. Exemplary details that may be presented by the current itemdetails portion include type, size, style, brand, vendor, price,availability, and/or other details associated with real-wearable items.

The conferencing module may be configured to provide the conferencingportion of the virtual-outfitting interface. The conferencing portionmay display one or more other users of the system or similar system. Theone or more other users displayed by the conferencing portion may bevirtually trying on real-wearable items. A user of thevirtual-outfitting interface may interact, such as by voice or text,with other users via the conferencing portion. This may give an enhancedsense of shopping with other users in disparate locations.

The tools portion of the virtual-outfitting interface may display one ormore icons or other links to access tools provided by one or more ofmodules of the processor. Such tools may allow a user to perform one ormore functions or manipulations within virtual-outfitting interface. Theone or more tools may include a purchase tool, a screen-capture tool, asocial-networking tool, a virtual-outfitting-interface-control tool,and/or other tools.

The purchase module may be configured provide the purchase tool includedin the tools portion. The purchase tool may allow the user to indicateone or more virtual-wearable items to effectuate a purchase of one ormore real-wearable items corresponding to the indicated one or morevirtual-wearable items. The user may indicate one or morevirtual-wearable items for purchase in conjunction with themotion-tracking module and/or a user interface associated with one ofthe client computing platforms. In some implementations, effectuating apurchase of a real-wearable item may include adding that item in ashopping cart associated with a virtual-commerce environment for futurepurchase.

The screen-capture module may be configured to provide thescreen-capture tool included in the tools portion of thevirtual-outfitting interface. The screen-capture tool may allow a userto obtain a snapshot of at least a region of the virtual-outfittinginterface. Such a region may include some or all of the main displayportion and/or some or all of other portions of the virtual-outfittinginterface. A snapshot may include a still image and/or video clip of theuser appearing to wear a real-wearable item that corresponds to aselected virtual-wearable items. The snapshot may be stored in theelectronic storage, in one or more of the client computing platforms,and/or at another location. The motion-capture module may be configuredto allow the user to interact with the screen-capture tool to effectuatea snapshot being obtained.

The snapshot portion may be provided by the screen-capture module in thetools portion of the virtual-outfitting interface. The snapshot portionmay be used to view and/or otherwise manage one or more snapshots of theuser virtually trying on a real-wearable item. The snapshot portion maydisplay a representation of some or all of the snapshots. A snapshot maybe represented, within the snapshot portion, by a thumbnail of thesnapshot, a cropped version of the snapshot, and/or other representationof the snapshot. The motion-capture module may be configured to allowthe user to interact with the snapshot portion in order to view and/orotherwise manage one or more snapshots represented in the snapshotportion.

The social-networking module may be configured to provide thesocial-networking tool in the tools portion of the virtual-outfittinginterface. The social-networking tool may allow the user to interfacewith one or more social-networking services (e.g., Facebook™, MySpace™,Twitter™, Twitpic™, Flicker™, and/or other social-networking services)with which the user is associated. The social-networking tool mayinterface with a social-networking service in order to share a snapshotwith one or more contacts of the user. The motion-capture module may beconfigured to allow the user to interact with the social-networking toolto effectuate functionalities attributed thereto.

The interface-control module may be configured to provide thevirtual-outfitting-interface-control tool in the tools portion of thevirtual-outfitting interface. The virtual-outfitting-interface-controltool may allow the user to control one or more aspects associated withthe virtual-outfitting interface. For example, thevirtual-outfitting-interface-control tool may allow the user to controlwhich portions are included in the virtual-outfitting interface,positions and/or sizes of one or more portions in the virtual-outfittinginterface, toggling the virtual-outfitting interface on or off, and/orother aspects associated with the virtual-outfitting interface.

Another aspect of the invention relates to a method for allowing a userto simulate wearing real-wearable items, according to one or moreimplementations of the invention. In some implementations, the methodmay be implemented in one or more processing devices (e.g., a digitalprocessor, an analog processor, a digital circuit designed to processinformation, an analog circuit designed to process information, a statemachine, and/or other mechanisms for electronically processinginformation).

At one operation, a virtual-outfitting interface is provided forpresentation to a user. The virtual-outfitting-interface module may beexecuted to perform this operation in some implementations.

At another operation, an item-search/selection portion is providedwithin the virtual-outfitting interface. The item-search/selectionportion may depict one or more virtual-wearable items corresponding toone or more real-wearable items. The item-search/selection module may beexecuted to perform this operation in some implementations.

At yet another operation, the user is allowed to select at least onevirtual-wearable item from the item-search/selection portion. Theitem-search/selection module may be executed to perform this operationin some implementations.

At still another operation, a main display portion within thevirtual-outfitting interface is provided. The main display portion mayinclude a composite video feed that incorporates a video feed of theuser and the selected at least one virtual-wearable item such that theuser appears to be wearing the selected at least one virtual-wearableitem in the main display portion. The composite-imaging module may beexecuted to perform this operation in some implementations.

These and other objects, features, and characteristics of the presentinvention, as well as the methods of operation and functions of therelated elements of structure and the combination of parts and economiesof manufacture, will become more apparent upon consideration of thefollowing description and the appended claims with reference to theaccompanying drawings, all of which form a part of this specification,wherein like reference numerals designate corresponding parts in thevarious figures. It is to be expressly understood, however, that thedrawings are for the purpose of illustration and description only andare not intended as a definition of the limits of the invention. As usedin the specification and in the claims, the singular form of “a”, “an”,and “the” include plural referents unless the context clearly dictatesotherwise.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a system configured provide a simulation of wearingreal-wearable items, according to one or more implementations of theinvention.

FIG. 2 illustrates a virtual-outfitting interface, according to one ormore implementations of the invention.

FIG. 3 illustrates an exemplary virtual-outfitting interface, accordingto one or more implementations of the invention.

FIG. 4 illustrates a method for allowing a user to simulate wearingreal-wearable items, according to one or more implementations of theinvention.

DETAILED DESCRIPTION

FIG. 1 illustrates a system 100 configured to provide a simulation ofwearing real-wearable items, according to one or more implementations ofthe invention. According to exemplary implementations, the user may bepresented one or more virtual-wearable items, such as via a userinterface. The virtual-wearable items may include virtual garments(e.g., a virtual shirt, a virtual hat, virtual pants, and/or othervirtual garments), virtual accessories (e.g., virtual jewelry, virtualhats, and/or other virtual accessories), and/or other virtual-wearableitems. The virtual-wearable items may represent real-wearable items. Theuser may select at least one of the virtual-wearable item to virtually“try on” at least one corresponding real-wearable item. A compositeimage may be presented to the user in real time or near-real time, whichmay incorporate a live video feed of the user and one or more selectedvirtual-wearable items such that the user appears to be wearingreal-wearable items corresponding to the selected virtual-wearableitem(s) in the composite video feed.

In some implementations, the user may be presented a virtual-outfittinginterface. The virtual-outfitting interface may include severalportions, one of which may include the composite video feed. Variousinputs such as motions of the user may be tracked such that the user mayinteract with one or more of the portions of the virtual-outfittinginterface. For example, the user may change the virtual-wearable itemdisplayed, purchase a real-wearable item associated with a displayedvirtual-wearable item, obtain a snapshot or video clip of the uservirtually wearing a real-wearable item, share snapshots or video clipssuch as via social-networking services, view and interact with friendsthat are also virtually trying on real-wearable items, and/or performother actions in conjunction with the system 100.

In some implementations, the system 100 may include one or morevirtual-commerce-environment servers 102 and/or other components. Thesystem 100 may operate in communication and/or coordination with one ormore external resources 104. Users may interface with the system 100and/or the external resources 104 via client computing platforms 106.Components of the system 100, the virtual-commerce-environment servers102, the external resources 104, and/or the client computing platforms106 may be operatively linked via one or more electronic communicationlinks. For example, such electronic communication links may beestablished, at least in part, via a network 108, which may include theInternet and/or other networks. It will be appreciated that this is notintended to be limiting, and that the scope of this disclosure includesimplementations in which the virtual-commerce-environment servers 102,the external resources 104, and/or the client computing platforms 106are operatively linked via some other communication media.

A given client computing platform 106 may include one or more processorsconfigured to execute computer program modules. The computer programmodules may be configured to enable one or more users associated withthe given client computing platform 106 to interface with the system 100and/or the external resources 104, and/or provide other functionalityattributed herein to client computing platforms 106. A given clientcomputing platform 106 may also be communicatively coupled with animaging device (e.g., camera 107) or have such an imaging deviceintegrated therewith. Examples of imaging devices that may be includedas the camera 107 may include an analog camera, a digital camera, a 2Dcamera, a stereo camera, a 3D camera, and/or other imaging devices. Animaging device may be configured to capture still images and/or a livevideo feed of a user of a given client computing platform 106. Imagingdevices associated with individual ones of the client computingplatforms 106 may be configured to provide information (e.g., a videofeed, one or more images, and/or other information) to one or moremodules associated with the virtual-commerce-environment servers 102. Byway of non-limiting example, the given client computing platform 106 mayinclude one or more of a desktop computer, a laptop computer, a handheldcomputer, a NetBook, a Smartphone, and/or other computing platforms.

Individual ones of the client computing platforms 106 may include userinterfaces. A user interface included in a given client computingplatform 106 may be configured to provide an interface between thevirtual-commerce-environment servers 102 and a user of the given clientcomputing platform 106 through which the user may provide information toand/or receive information from the virtual-commerce-environment servers102. This enables data, results, and/or instructions and any othercommunicable items, collectively referred to as “information,” to becommunicated between the user and virtual-commerce-environment servers102. Exemplary information provided to and/or received from thevirtual-commerce-environment servers 102 via a user interface of one ofthe client computing platforms 106 may include one or more of selectionof one or more virtual-wearable items, interactions with media providedby the virtual-commerce-environment servers 102, and/or otherinformation. Examples of interface devices suitable for inclusion in auser interface of one of the client computing platforms 106 include oneor more of a keypad, buttons, switches, a keyboard, knobs, levers, adisplay screen, a touch screen, speakers, a microphone, an indicatorlight, an audible alarm, and/or a printer. It is to be understood thatother communication techniques, either hard-wired or wireless, are alsocontemplated by the present invention as a user interface of individualones of the client computing platforms 106. As such, any technique forcommunicating information with the virtual-commerce-environment servers102 is contemplated by the present invention as a user interface a givenclient computing platform 106.

The external resources 104 may include sources of information, hostsand/or providers of virtual commerce environments outside of the system100, external entities participating with the system 100, and/or otherresources. In some implementations, some or all of the functionalityattributed herein to the external resources 104 may be provided byresources included in the system 100.

The virtual-commerce-environment servers 102 may comprise electronicstorage 110, one or more processors 112, and/or other components. Thevirtual-commerce-environment servers 102 may include communicationlines, or ports to enable the exchange of information with a networkand/or other computing platforms. Although system 100 may be describedin certain sections herein as including virtual-commerce-environmentservers 102, this is not intended to be limiting. Thevirtual-commerce-environment servers 102 may be separate and distinctfrom the system 100, and may be provided by an entity that is separatefrom, for example, one or more components of the system 100.

The electronic storage 110 may comprise electronic storage media thatelectronically stores information. The electronic storage media of theelectronic storage 110 may include one or both of system storage that isprovided integrally (i.e., substantially non-removable) with thevirtual-commerce-environment servers 102 and/or removable storage thatis removably connectable to the virtual-commerce-environment servers 102via, for example, a port (e.g., a USB port, a firewire port, etc.) or adrive (e.g., a disk drive, etc.). The electronic storage 110 may includeone or more of optically readable storage media (e.g., optical disks,etc.), magnetically readable storage media (e.g., magnetic tape,magnetic hard drive, floppy drive, etc.), electrical charge-basedstorage media (e.g., EEPROM, RAM, etc.), solid-state storage media(e.g., flash drive, etc.), and/or other electronically readable storagemedia. The electronic storage 110 may store software algorithms,information determined by processors 112, information received fromclient computing platforms 106, information received from the externalresources 104, and/or other information that enables thevirtual-commerce-environment servers 102 to function as describedherein.

The processor(s) 112 may be configured to provide information processingcapabilities in the virtual environments servers 102. As such, theprocessor 112 may include one or more of a digital processor, an analogprocessor, a digital circuit designed to process information, an analogcircuit designed to process information, a state machine, and/or othermechanisms for electronically processing information. Although theprocessor 112 is shown in FIG. 1 as a single entity, this is forillustrative purposes only. In some implementations, processor 112 mayinclude a plurality of processing units. These processing units may bephysically located within the same device, or the processor 112 mayrepresent processing functionality of a plurality of devices operatingin coordination.

As is shown in FIG. 1, the processor 112 may be configured to execute avirtual outfitting program 113. The virtual outfitting program 113 mayinclude one or more computer program modules and/or instructions thatmay be executed to provide a simulation of wearing real-wearable items.The one or more computer program modules may include one or more of avirtual-outfitting-interface module 114, a motion-capture module 116, anitem-search/selection module 118, a composite-imaging module 120, aconferencing module 122, a purchase module 124, a screen-capture module126, a social-networking module 128, an interface-control module 130,and/or other modules. The processor 112 may be configured to executemodules 114, 116, 118, 120, 122, 124, 126, 128, and/or 130 by software;hardware; firmware; some combination of software, hardware, and/orfirmware; and/or other mechanisms for configuring processingcapabilities on the processor 112.

It should be appreciated that although modules 114, 116, 118, 120, 122,124, 126, 128, and 130 are illustrated in FIG. 1 as being co-locatedwithin a single processing unit, in implementations in which theprocessor 112 includes multiple processing units, one or more of modules114, 116, 118, 120, 122, 124, 126, 128, and/or 130 may be locatedremotely from the other modules. The description of the functionalityprovided by the different modules 114, 116, 118, 120, 122, 124, 126,128, and/or 130 described below is for illustrative purposes, and is notintended to be limiting, as any of modules 114, 116, 118, 120, 122, 124,126, 128, and/or 130 may provide more or less functionality than isdescribed. For example, one or more of modules 114, 116, 118, 120, 122,124, 126, 128, and/or 130 may be eliminated, and some or all of itsfunctionality may be provided by other ones of modules 114, 116, 118,120, 122, 124, 126, 128, and/or 130. As another example, processor 112may be configured to execute one or more additional modules that mayperform some or all of the functionality attributed below to one ofmodules 114, 116, 118, 120, 122, 124, 126, 128, and/or 130.

The virtual-outfitting-interface module 114 may be configured toprovide, for presentation to one or more users, a virtual-outfittinginterface. The virtual-outfitting interface may be presented to a uservia a user interface of a given client computing platform 106. Anexemplary virtual-outfitting interface 200, in accordance with one ormore implementations, is illustrated in FIG. 2. As depicted in FIG. 2,the virtual-outfitting interface 200 includes an item-search/selectionportion 202, a main display portion 204, a current item details portion206, a conferencing portion 208, a tools portion 210, a snapshot portion212, and/or other portions. Although the virtual-outfitting interface200 is depicted as including portions 202-212, this is not intended tobe limiting as one or more portioned may be omitted, one or moreportions may be added, and/or one or more portions may be combined intoa single portion. Furthermore, functionalities attributed to a singleportion may be implemented at more than one position within thevirtual-outfitting interface 200. It is also appreciated that one ormore of the portions may overlap one or more other portions. In someembodiments, the size and/or position attributed to a given portionwithin the virtual-outfitting interface 200 may be dynamic.

A user may interact with one or more portions 202-212 of thevirtual-outfitting interface 200. In some implementations, the user mayinteract with one or more portions 202-212 via a user interfaceassociated with a given client computing platform 106. For example, auser may use a mouse to click within a given portion to perform one ormore functions described herein. The user may interact with one or moreportions 202-212 by voice command, according to some implementations.The user may interact with one or more portions 202-212, in accordancewith some implementations, using motions and/or gestural commands.

The motion-capture module 116 may be configured to track motion of theuser. Motion of the user tracked by the motion-capture module 116 mayallow the user to interact with one or more portions 202-212 of thevirtual-outfitting interface 200. Such interactions may include gesturalcommands and/or other commands associated with motions of the user. Themotion-capture module 116 may utilize images and/or video of the userobtained by an imaging device associated with one of the clientcomputing platforms 106 in order to track motion of the user. Exemplaryimplementations of motion tracking and utilization thereof are describedfurther in connection with one or more portions 202-212.

The item-search/selection module 118 may be configured to provide theitem-search/selection portion 202 of the virtual-outfitting interface200. The item-search/selection portion 202 may present one or morevirtual-wearable items to a user. As mentioned above, virtual-wearableitems may include one or more of a virtual garment, a virtual accessory,and/or other virtual-wearable items. In some implementations, a givenvirtual-wearable item may represent a real-wearable item. By way ofnon-limiting example, a virtual-wearable item may pictorially depict,and thus represent, a Nike® tee shirt or other tangible items that maybe worn by the user. In some implementations, the item-search/selectionportion 202 may display an image or other representation (e.g., atextual representation) of a virtual-wearable item. The user maymanipulate the item-search/selection portion 202 using an interfaceincluded in a given client computing platform 106 and/or othertechniques described herein, such as gestures and/or voice commands.

According to some implementations, the item-search/selection module 118may be configured to allow a user to search available virtual-wearableitems. Available items may be presented in the item-search/selectionportion 202, and may be searched according to type, size, style, brand,vendor, price, availability, and/or other attributes associated withreal-wearable items. In some implementations, some or all searchingcapabilities may be provided by a third-party service (e.g.,Amazon.com™, Google™, and/or other third parties). Theitem-search/selection module 118 may be configured to providesuggestions of one or more real-wearable items based on one or moresearch criterions inputted by the user.

In some implementations, the item-search/selection module 118 may beconfigured to allow a user to select one or more virtual-wearable itemspresented in the item-search/selection portion 202. Selectedvirtual-wearable items may be “tried-on” virtually by the user, asdescribed further herein. In some implementations, one or morevirtual-wearable items presented in the item-search/selection portion202 may be pre-selected by one or more users, such as via an onlinestorefront.

The item-search/selection module 118 may be configured to manage a queueof selected virtual-wearable items, in some implementations. Some or allof the queue of selected virtual-wearable items may be presented in theitem-search/selection portion 202. The user may add, subtract, reorder,scroll through, browse, and/or otherwise manage selectedvirtual-wearable items included in such a queue. Some implementationsmay include a default queue that includes a predetermined set ofvirtual-wearable items. The user may select one or more virtual-wearableitems from to queue in order to virtually “try on” real-wearable itemscorresponding to selected virtual-wearable items.

The composite-imaging module 120 may be configured to provide the maindisplay portion 204 of the virtual-outfitting interface 200. The maindisplay portion 204 may include one or more images and/or video of theuser virtually trying on one or more real-wearable items that correspondto one or more selected virtual-wearable items. In such images and/orvideo, the one or more selected virtual-wearable items may be visuallyoverlaid on the user in a position in which the user would normally wearcorresponding real-wearable items. The position of the virtual-wearableitem in the main display portion 204 may be determined manually by theuser (e.g., drag and drop) using a user interface of a given clientcomputing platforms 106, and/or may be determined wholly or partially bythe motion-capture module 116, as described further herein. In someimplementations, the main display portion 204 may include a compositevideo feed that incorporates a video feed of the user and one or morevirtual-wearable items selected by the user via theitem-search/selection module 118. The video feed of the user may beobtained by an imaging device associated with one of the clientcomputing platforms 106. Presentation of the composite video feed may bein real time or near-real time.

The motion-capture module 116 may be configured to position and/or sizea virtual-wearable item relative to the user's body in an image and/orvideo in the main display portion 204. Some implementations may utilizeaugmented reality technology to position a virtual-wearable itemrelative to the user's body. The motion-capture module 116 may utilizean augmented-reality marker in order position a virtual-wearable item.An augmented-reality marker may include a predefined pattern printed ona sheet of paper, an arbitrary image or pattern (e.g., a magazineadvertisement), and/or other image or pattern. An augmented-realitymarker may allow the user to position and/or size a selectedvirtual-wearable item within the main display portion 204. For example,in one implementation, the position of an augmented-reality-marker inthe main display portion 204 may correspond to the position of avirtual-wearable item in the main display portion 204. As such, the usermay hold an augmented-reality marker in front of themselves whileviewing the main display portion 204 to position a virtual-wearable itemso that it appears that the user is wearing the virtual-wearable item.

Some implementations may not require an augmented-reality marker toposition and/or size a virtual-wearable item in the main display portion204. For example, the motion-capture module 116 may be configured torecognize position and/or orientation of one more body parts of the userin the main display portion 204 in order to determine a position, size,and/or orientation for a given virtual-wearable item in the main displayportion 204. Once the one or more body parts are recognized, thecomposite-imaging module 120 may position a virtual-wearable item at apredetermined offset and/or orientation relative to the recognized oneor more body parts.

The motion-capture module 116 may track motion, position, and/ororientation of the user to overlay a virtual-wearable item on the userin the main display portion 204 such that the virtual-wearable itemappears to be worn by the user while the user moves about and/or rotatesin the main display portion 204. Based on tracked motion, positionand/or orientation of the user in the main display portion 204, avirtual-wearable item may move within the main display portion 204 inorder to track movements of the user. Characteristics associated with avirtual-wearable item (e.g., type of fabric, texture of fabric, and/orother characteristics) may be utilized in rendering the virtual-wearableitem in the main display portion 204 in order to enhance the realness ofthe appearance of the virtual-wearable item.

In some implementations, the motion-capture module 116 may be configuredto allow the user may interact with one or more portions 202-212 of thevirtual-outfitting interface 200 by moving a body part (e.g., a finger,hand, and/or other body part) such that the body part, as depicted inthe main display portion 204, lies within one or more portions 202-212.By way of non-limiting example, the user may move a hand such that itlies within the item-search/selection portion 202 in order to select avirtual-wearable item, to effectuate a displayed virtual-wearable itemincluded in the main display portion 204 being replaced by a differentselected virtual-wearable item such that the user appears to be wearingthe different selected virtual-wearable item in the main display portion204, to cycle through virtual-wearable items included in a queue ofseveral virtual-wearable items, and/or to perform other functionsassociated with the item-search/selection portion 202.

The item-search/selection module 118 may be configured to provide thecurrent item details portion 206 of the virtual-outfitting interface200. The current item details portion 206 may include one or moredetails of the real-wearable item that a user is currently trying onvirtually using the system 100. Exemplary details that may be presentedby the current item details portion 206 include type, size, style,brand, vendor, price, availability, and/or other details associated withreal-wearable items.

The conferencing module 122 may be configured to provide theconferencing portion 208 of the virtual-outfitting interface 200. Theconferencing portion 208 may display one or more other users of thesystem 100 or similar system. The one or more other users displayed bythe conferencing portion 208 may be virtually trying on real-wearableitems. A user of the virtual-outfitting interface 200 may interact, suchas by voice or text, with other users via the conferencing portion 208.This may give an enhanced sense of shopping with other users indisparate locations.

The tools portion 210 of the virtual-outfitting interface 200 maydisplay one or more icons or other links to access tools provided by oneor more of modules of the processor 112. Such tools may allow a user toperform one or more functions or manipulations within virtual-outfittinginterface 200. The one or more tools may include a purchase tool, ascreen-capture tool, a social-networking tool, avirtual-outfitting-interface-control tool, and/or other tools.

The purchase module 124 may be configured provide the purchase toolincluded in the tools portion 210. The purchase tool may allow the userto indicate one or more virtual-wearable items to effectuate a purchaseof one or more real-wearable items corresponding to the indicated one ormore virtual-wearable items. The user may indicate one or morevirtual-wearable items for purchase in conjunction with themotion-tracking module 122 and/or a user interface associated with oneof the client computing platforms 106. In some implementations,effectuating a purchase of a real-wearable item may include adding thatitem in a shopping cart associated with a virtual-commerce environmentfor future purchase.

The screen-capture module 126 may be configured to provide thescreen-capture tool included in the tools portion 210 of thevirtual-outfitting interface 200. The screen-capture tool may allow auser to obtain a snapshot of at least a region of the virtual-outfittinginterface 200. Such a region may include some or all of the main displayportion 204 and/or some or all of other portions of thevirtual-outfitting interface 200. A snapshot may include a still imageand/or video clip of the user appearing to wear a real-wearable itemthat corresponds to a selected virtual-wearable items. The snapshot maybe stored in the electronic storage 110, in one or more of the clientcomputing platforms 106, and/or at another location. The motion-capturemodule 116 may be configured to allow the user to interact with thescreen-capture tool to effectuate a snapshot being obtained.

The snapshot portion 212 may be provided by the screen-capture module126 in the tools portion 210 of the virtual-outfitting interface 200.The snapshot portion 212 may be used to view and/or otherwise manage oneor more snapshots of the user virtually trying on a real-wearable item.The snapshot portion 212 may display a representation of some or all ofthe snapshots. A snapshot may be represented, within the snapshotportion 212, by a thumbnail of the snapshot, a cropped version of thesnapshot, and/or other representation of the snapshot. Themotion-capture module 116 may be configured to allow the user tointeract with the snapshot portion 212 in order to view and/or otherwisemanage one or more snapshots represented in the snapshot portion 212.

The social-networking module 128 may be configured to provide thesocial-networking tool in the tools portion 210 of thevirtual-outfitting interface 200. The social-networking tool may allowthe user to interface with one or more social-networking services (e.g.,Facebook™, MySpace™, Twitter™, Twitpic™, Flicker™, and/or othersocial-networking services) with which the user is associated. Thesocial-networking tool may interface with a social-networking service inorder to share a snapshot with one or more contacts of the user. By wayof non-limiting example, the social-networking tool may interface withFacebook™ by entering the snapshot with an associated comment on theprofile page of the user. The comment may include a link (e.g., auniform resource locator (URL)) to content (e.g., a website) and/orinformation associated with a real-wearable item depicted in a snapshot.The motion-capture module 116 may be configured to allow the user tointeract with the social-networking tool to effectuate functionalitiesattributed thereto.

The interface-control module 130 may be configured to provide thevirtual-outfitting-interface-control tool in the tools portion 210 ofthe virtual-outfitting interface 200. Thevirtual-outfitting-interface-control tool may allow the user to controlone or more aspects associated with the virtual-outfitting interface200. For example, the virtual-outfitting-interface-control tool mayallow the user to control which portions 202-212 are included in thevirtual-outfitting interface 200, positions and/or sizes of one or moreportions 202-212 in the virtual-outfitting interface 200, toggling thevirtual-outfitting interface 200 on or off, and/or other aspectsassociated with the virtual-outfitting interface 200.

FIG. 3 illustrates an exemplary virtual-outfitting interface 300,according to one or more implementations of the invention. Thevirtual-outfitting interface 300 may include a depiction of a user 302with a virtual-wearable item 304 overlaid on the user 302 such that theuser appears to be trying on real-wearable item that corresponds to thevirtual-wearable item 304. The user 302 and the virtual-wearable item304 may be included in a main display portion of the virtual-outfittinginterface 300 similar to the main display portion 204 described inconnection with FIG. 2. Various functionalities described in connectionwith portions 202-212 of the virtual-outfitting interface 200 of FIG. 2may be represented or linked to by icons. The user 302 may interact withone or more icons by using a user interface associated with one of theclient computing platforms 106, by voice command, by performing certainmotions as described in connection with the motion-capture module 116,and/or by other interactions.

In the virtual-outfitting interface 300, icons 306, 308, 310, and 312may provide functionalities attributed to the item-search/selectionportion 202 of FIG. 2. More specifically, the icons 306 and 308 mayallow the user 302 to select a virtual-wearable item to try on in thevirtual-outfitting interface 300. The icons 310 and 312 may allow theuser 302 to choose a style of a virtual-wearable item. The icon 314 maycorrespond to the purchasing tool described in connection with thepurchase module 124. The icon 316 may correspond to the screen-capturetool described in connection with the screen-capture module 126. Theicon 318 may correspond to the virtual-outfitting-interface-control tooldescribed in connection with the interface-control module 130. The frame318 may correspond to the snapshot portion 212 of FIG. 2. The frame 322may correspond to the conferencing portion 208 of FIG. 2.

FIG. 4 illustrates a method 400 for allowing a user to simulate wearingreal-wearable items, according to one or more implementations of theinvention. The operations of the method 400 presented below are intendedto be illustrative. In some implementations, the method 400 may beaccomplished with one or more additional operations not described,and/or without one or more of the operations discussed. Additionally,the order in which the operations of the method 400 are illustrated inFIG. 4 and described below is not intended to be limiting.

In some implementations, the method 400 may be implemented in one ormore processing devices (e.g., a digital processor, an analog processor,a digital circuit designed to process information, an analog circuitdesigned to process information, a state machine, and/or othermechanisms for electronically processing information). The one or moreprocessing devices may include one or more devices executing some or allof the operations of the method 400 in response to instructions storedelectronically on an electronic storage medium. The one or moreprocessing devices may include one or more devices configured throughhardware, firmware, and/or software to be specifically designed forexecution of one or more of the operations of the method 400.

At an operation 402, a virtual-outfitting interface is provided forpresentation to a user. The virtual-outfitting-interface module 114 maybe executed to perform the operation 402 in some implementations.

At an operation 404, an item-search/selection portion is provided withinthe virtual-outfitting interface. The item-search/selection portion maydepict one or more virtual-wearable items corresponding to one or morereal-wearable items. The item-search/selection module 118 may beexecuted to perform the operation 404 in some implementations.

At an operation 406, the user is allowed to select at least onevirtual-wearable item from the item-search/selection portion. Theitem-search/selection module 118 may be executed to perform theoperation 406 in some implementations.

At an operation 408, a main display portion within thevirtual-outfitting interface is provided. The main display portion mayinclude a composite video feed that incorporates a video feed of theuser and the selected at least one virtual-wearable item such that theuser appears to be wearing the selected at least one virtual-wearableitem in the main display portion. The composite-imaging module 120 maybe executed to perform the operation 408 in some implementations.Although not depicted in FIG. 4, the method 400 may include operationsconsistent with the functions described herein of one or more of themodules 114, 116, 118, 120, 122, 124, 126, 128, and/or 130.

Although the invention has been described in detail for the purpose ofillustration based on what is currently considered to be the mostpractical and preferred embodiments, it is to be understood that suchdetail is solely for that purpose and that the invention is not limitedto the disclosed embodiments, but, on the contrary, is intended to covermodifications and equivalent arrangements that are within the spirit andscope of the appended claims. For example, it is to be understood thatthe present invention contemplates that, to the extent possible, one ormore features of any embodiment can be combined with one or morefeatures of any other embodiment.

What is claimed is:
 1. A system configured for allowing a user tosimulate wearing real-wearable items, the system comprising: one or moreprocessors configured by machine-readable instructions to: recognize aposition and/or orientation of one or more body parts of a userincluding a first body part; and provide a virtual-outfitting interfacefor presentation to a user, the virtual-outfitting interface includingtwo or more separate portions simultaneously presented in thevirtual-outfitting interface, the two or more separate portionsincluding a main display portion and an icon that is overlain upon themain display portion; wherein the main display portion includes acomposite video feed that incorporates a live video feed of the user anda first virtual-wearable item, a position, size, and/or orientation ofthe first virtual-wearable item being determined such that the firstvirtual-wearable item moves within the main display portion according tothe position and/or orientation of the user so that the user appears tobe wearing the first virtual-wearable item in real time in the maindisplay portion; and wherein the virtual-outfitting interface isconfigured to allow the user to interact with the virtual-outfittinginterface using one or more gestural commands including a first gesturalcommand, the first gestural command being received responsive to theuser moving the first body part such that within the virtual-outfittinginterface a live video depiction of the first body part lies at the sameposition as the icon.
 2. The system of claim 1, wherein the firstvirtual-wearable item includes one or both of a virtual garment or avirtual accessory.
 3. The system of claim 1, wherein the firstvirtual-wearable item visually represents a corresponding real-wearableitem.
 4. The system of claim 1, wherein the first body part is a hand ofthe user.
 5. The system of claim 1, wherein the first body part is afinger of the user.
 6. The system of claim 1, wherein the user appearsto be wearing a second virtual-wearable item in the composite video feedof the main display portion responsive to the second virtual-wearableitem being selected via the first gestural command.
 7. The system ofclaim 1, wherein the two or more separate portions of thevirtual-outfitting interface include an item search/selection portionconveying information associated with one or more virtual-wearable itemscorresponding to one or more real-wearable items.
 8. The system of claim1, wherein the two or more separate portions of the virtual-outfittinginterface include a conferencing portion configured to display one ormore other users.
 9. The system of claim 8, wherein the conferencingportion is configured to facilitate interactions between the user andindividual ones of the one or more other users via one or both of voiceor text.
 10. The system of claim 1, wherein the one or more processorsare further configured by machine-readable instructions to allow theuser to indicate one or more virtual-wearable items via the firstgestural command to effectuate a purchase of one or more real-wearableitems corresponding to the indicated one or more virtual-wearable items.11. The system of claim 1, wherein the one or more processors arefurther configured by machine-readable instructions to provide ascreen-capture tool in the virtual-outfitting interface, thescreen-capture tool allowing the user to obtain a snapshot of at leastone region of the virtual-outfitting interface via the first gesturalcommand.
 12. The system of claim 1, wherein the one or more processorsare further configured by machine-readable instructions to provide asocial-networking tool in the virtual-outfitting interface, thesocial-networking tool allowing the user to interface with one or moresocial-networking services with which the user is associated.
 13. Thesystem of claim 12, wherein interfacing with a given social-networkingservice includes sharing a snapshot with one or more contacts of theuser within the given social-networking service.
 14. The system of claim12, wherein interfacing with a given social-networking service includesproviding a comment on a profile page of the user within the givensocial-networking service, the comment including one or both of a linkor information associated with a real-wearable item corresponding to thefirst virtual-wearable item.
 15. A computer-implemented method forallowing a user to simulate wearing real-wearable items, the methodbeing performed by one or more processors configured by machine-readableinstructions, the method comprising: recognizing a position and/ororientation of one or more body parts of a user including a first bodypart; and providing a virtual-outfitting interface for presentation to auser, the virtual-outfitting interface including two or more separateportions simultaneously presented in the virtual-outfitting interface,the two or more separate portions including a main display portion andan icon that is overlain upon the main display portion; wherein the maindisplay portion includes a composite video feed that incorporates a livevideo feed of the user and a first virtual-wearable item, a position,size, and/or orientation of the first virtual-wearable item beingdetermined such that the first virtual-wearable item moves within themain display portion according to the position and/or orientation of theuser so that the user appears to be wearing the first virtual-wearableitem in real time in the main display portion; and wherein thevirtual-outfitting interface is configured to allow the user to interactwith the virtual-outfitting interface using one or more gesturalcommands including a first gestural command, the first gestural commandbeing received responsive to the user moving the first body part suchthat within the virtual-outfitting interface a live video depiction ofthe first body part lies at the same position as the icon.
 16. Themethod of claim 15, wherein the first body part is a hand of the user ora finger of the user.
 17. The method of claim 15, wherein the two ormore separate portions of the virtual-outfitting interface include aconferencing portion configured to display one or more other users. 18.The method of claim 15, further comprising receiving an indication viathe first gestural command of one or more virtual-wearable items toeffectuate a purchase of one or more real-wearable items correspondingto the indicated one or more virtual-wearable items.
 19. The method ofclaim 15, further comprising providing a screen-capture tool in thevirtual-outfitting interface, the screen-capture tool allowing the userto obtain a snapshot of at least one region of the virtual-outfittinginterface via the first gestural command.
 20. The method of claim 15,further comprising providing a social-networking tool in thevirtual-outfitting interface, the social-networking tool allowing theuser to interface with one or more social-networking services with whichthe user is associated.